package com.cxz.study.domain.order.service;

/**
 * @className: InventoryService
 * @author: ocxz1
 * @date: 2025/6/13 下午7:14
 * @Version: 1.0
 * @description: ddd-struct3
 */
public interface InventoryService {

    /**
     * 检测库存是否足
     * @param productId 商品id
     * @param count 数量
     * @return
     */
    boolean isEnough(Long productId, int count);

    /**
     * 扣减库存
     * @param productId 商品id
     * @param count  数量
     */
    void deduct(Long productId, int count);

    /**
     * 取消扣减库存
     * @param productId 商品id
     * @param count 数量
     */
    void cancelDeduct(Long productId, int count);
}

    
    